Page({
  data: {
    messages: [],       // 聊天记录
    inputText: "",      // 输入框内容
    scrollTop: 0,       // 滚动条位置
    loading: false      // 加载状态
  },
  // 输入框事件
  onInput(e) {
    this.setData({ inputText: e.detail.value });
  },

  // 发送消息
  sendMessage() {
    // 获取输入的消息
    const inputText = this.data.inputText.trim();
    if (!inputText || this.data.loading) return;
    
    // 更新聊天记录、清空输入框
    const newMessages = [...this.data.messages, { role: "user", content: inputText }];
    this.setData({ 
      messages: newMessages,
      inputText: "",
      loading: true 
    });

    try {
      // 发送消息获取响应
      const responce = wx.request({
        url: 'https://chatapi.littlewheat.com/v1/chat/completions',
        method: 'POST',
        header: {
          'Content-Type': 'application/json',
          'Authorization': 'Bearer sk-o73Z0GSAKapWTasa1WWISjnhqb1Dq0zIdwlu7N06SFwCn9gi'
        },
        data: {
          model: 'gpt-3.5-turbo',
          messages: [
            { role: "user", content: inputText }
          ]
        },
        success: (res) => {
          console.log('API 返回:', res);
          // 处理响应
          const aiResponse = res.data.choices[0].message.content;
          console.log('aiResponse: ',aiResponse)
          this.setData({
            messages: [...newMessages, { role: "assistant", content: aiResponse }],
            scrollTop: this.data.scrollTop + 1000 // 滚动到底部
          });
        },
        fail: (err) => {
          console.error('请求失败', err);
        }
      });
    } catch (err){
      console.error("API调用失败:", err);
      wx.showToast({ title: "请求失败，请重试", icon: "none" });
    } finally {
      this.setData({ loading: false });
    }
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    setTimeout(() => {
      wx.showModal({
        title: '输入样例',
        content: '爸爸名字是xxx，妈妈名字是yyy，孩子跟爸爸/妈妈姓氏，请给儿子/女儿起几个2个字的名字！',
        showCancel: false // 是否显示取消按钮
      });
    }, 600); // 1000毫秒 = 1秒
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})